package com.cmf.config;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @Author: cmf
 * @Date: 2025/8/27 12:55
 * @Version: v1.0.0
 * @Description: 用于配置Mybatis Plus的相关插件和行为。
 **/
@Configuration
public class MybatisPlusConfig {

    /**
     * 配置Mybatis Plus的分页插件。
     * 分页插件是Mybatis Plus中用于支持分页查询的重要插件。
     *
     * @return 返回配置好的分页插件实例。
     */
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        // 创建分页插件实例，并设置每页的最大记录数为1000。
        PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
        // 每页最多可以查询1000条记录数
        paginationInnerInterceptor.setMaxLimit(1000L);
        // 将分页插件添加到拦截器链中。
        interceptor.addInnerInterceptor(paginationInnerInterceptor);
        return interceptor;
    }
}
